package com.jinxin.platform.cdysylives.service;


import com.jinxin.platform.base.common.pojo.JsonResult;
import com.jinxin.platform.cdysylives.bean.CdysylivesMonitorDevice;
import com.jinxin.platform.cdysylives.bean.bo.DeviceInfo;
import com.jinxin.platform.cdysylives.common.ResultEntity;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface IEquipmentService {

    ResultEntity queryToken(String appKey,String secret);

    Map<String,Object> listDevices();

    ResultEntity getVideoAddress(String deviceSerial,String quality,String channelNo);

    ResultEntity getVideoAddress(String communityId,String deviceSerial,String quality,String channelNo);

    Map<String,Object> listCam(Integer page,Integer limit);

    Map<String, Object> listChannelByDevice(String deviceSerial);

    Map<String, Object> listChannelByDevice(String deviceSerial,String communityId);

    CdysylivesMonitorDevice selectOne(HashMap param);

    List<CdysylivesMonitorDevice> list(HashMap param);

    List<CdysylivesMonitorDevice> listPage(HashMap param);

    int listPageCount(HashMap param);

    JsonResult saveOrUpdate(CdysylivesMonitorDevice record);

    JsonResult delete(String id);

    JsonResult batchEnable(List<String> idList);

    JsonResult batchDisable(List<String> idList);

    JsonResult queryBuildingList(String communityId);

    JsonResult listDeviceType();

    JsonResult syncDevice(String communityId);

    JsonResult listTask(String deviceId);

    Map<String, Object> listFile(String taskId,String communityId);

    JsonResult deleteFile(String communityId,String fileId, String projectId);

    JsonResult batchConfirmDevice(List<DeviceInfo> deviceInfoList);

    String queryCommunityIdByUId(String userId);
}
